import { SystemFileDTO } from '../../icm-global/system-file/system-file-dto';
import { AcademicProgressDTO } from './academic-progress.dto';

/**
 * 学生学分记录
 */
export interface StudentCreditRecordDTO {
  /**
   * 学生学业学分记录id，自增
   */
  id: string;

  /**
   * 徽标
   */
  tag: number;
  /**
   * 学生毕业最低学分要求
   */
  academicProgress: AcademicProgressDTO;

  /**
   * 学院名称
   */
  academyName: string;

  /**
   * 行政班级
   */
  className: string;

  /**
   * 学生学号
   */
  studentCode: string;

  /**
   * 学生姓名
   */
  studentName: string;

  /**
   * 学生性别
   */
  gender: string;

  /**
   * 学生入学年份
   */
  grade: number;

  /**
   * 已修必修学分：所有必修课 REQUIRED_COURSE
   */
  compulsoryCredit: number;

  /**
   * 已修学科基础选修: 学科基础课/限选课
   */
  subjectBasedElective: number;

  /**
   * 已修专业选修：专业课/限选课 + 专业课/任选课
   */
  professionElective: number;

  /**
   * 已修公共选修：公共课/任选课
   */
  publicElective: number;

  /**
   * 已修实践学分：课程设计等
   */
  practiceCredit: number;

  /**
   * 已修创新分
   */
  innovationScore: number;

  /**
   * 已修毕业实习
   */
  graduationInternship: number;

  /**
   * 已修毕业论文
   */
  graduationThesis: number;

  /**
   * 已修学分合计
   */
  total: number;

  /**
   * 附件
   */
  files: Array<SystemFileDTO>;

  /**
   * 附件ID列表
   */
  fileIds: Array<string>;
}
